package com.cloudbroker.bcs.csvc.uf30.api.t2service;

import com.cloudbroker.bcs.csvc.uf30.api.vo.request.*;
import com.cloudbroker.bcs.csvc.uf30.api.vo.request.base.CifForm;
import com.cloudbroker.bcs.csvc.uf30.api.vo.request.base.UF30Form;
import com.cloudbroker.bcs.csvc.uf30.api.vo.response.*;
import com.hundsun.jresplus.remoting.impl.annotation.Service;
import com.hundsun.jresplus.remoting.impl.annotation.ServiceModule;
import com.hundsun.jresplus.remoting.impl.annotation.ServiceParam;

import java.math.BigDecimal;

/**
 * Created by xuyn15828 on 2016/3/21.
 */
@ServiceModule
public interface VirFundT2Service{
    /**
     * 客户金币转入转出
     * */
    @Service(functionId = "5070309" , desc = "客户金币转入转出")
    public TransIdBackVo goldcoinChange(@ServiceParam("param") GoldCoinChangeForm param);

    /**
     * 客户金币冲销
     * */
    @Service(functionId = "5070310" , desc = "客户金币冲销")
    public TransIdBackVo goldcoinRechangeOff(@ServiceParam("param") GoldcoinRechangeOffForm param);

    /**
     * 金币转账
     * */
    @Service(functionId = "5070311" , desc = "金币转账")
    public TransIdBackVo goldcoinTrans(@ServiceParam("param") GoldcoinTransForm param);

    /**
     * 客户金币消费流水查询
     * */
    @Service(functionId = "5070312" , desc = "客户金币消费流水查询")
    public GoldcoinJourQryBackVo goldcoinJourQry(@ServiceParam("param") GoldcoinJourQryForm param);

    /**
     * 客户金币余额查询
     * */
    @Service(functionId = "5070313" , desc = "客户金币余额查询")
    public GoldcoinBalanceQryBackVo goldcoinBalanceQry(@ServiceParam("param") CifForm param);

    /**
     * 系统金币转入转出
     * */
    @Service(functionId = "5070314" , desc = "系统金币转入转出")
    public TransIdBackVo goldcoinSystemChange(@ServiceParam("param") GoldcoinSysRechangeForm param);

    /**
     * 系统金币消费流水查询
     * */
    @Service(functionId = "5070315" , desc = "系统金币消费流水查询")
    public GoldcoinJourComQryBackVo goldcoinJourComQry(@ServiceParam("param") GoldcoinJourComQryForm param);

    /**
     * 系统金币余额查询
     * */
    @Service(functionId = "5070316" , desc = "系统金币余额查询")
    public GoldcoinComBalanceQryBackVo goldcoinComBalanceQry(@ServiceParam("param") UF30Form param);


    /**
     * 客户积分消费流水查询
     * */
    @Service(functionId = "5070317" , desc = "客户积分消费流水查询")
    public PointJourQryBackVo pointJourQry(@ServiceParam("param") PointJourQryForm param);

    /**
     * 客户积分余额查询
     * */
    @Service(functionId = "5070318" , desc = "客户积分余额查询")
    public PointBalanceQryBackVo pointQry(@ServiceParam("param") PointBalanceForm param);

    /**
     * 客户积分充值
     * */
    @Service(functionId = "5070319" , desc = "客户积分充值")
    public PointChangeBackVo pointRecharge(@ServiceParam("param") PointChangeForm param);

    /**
     * 客户积分消费
     * */
    @Service(functionId = "5070320" , desc = "客户积分消费")
    public PointChangeBackVo pointConsume(@ServiceParam("param") PointChangeForm param);
}
